<script setup lang="ts">
defineOptions({
  inheritAttrs: false // 关闭默认行为，手动控制 $attrs 的使用
})

import { Download } from '@element-plus/icons-vue'

import { getCurrentInstance } from 'vue'
const instance = getCurrentInstance()
const attrs = instance?.attrs
console.log(`output->$attrs`, attrs)

function exportFile() {
  console.log(`output->`)
}
</script>
<template>
  <!-- 将所有未声明的属性传递给内部的 button 元素 -->
  <el-button type="warning" :icon="Download" plain @click="exportFile" v-bind="$attrs"
    > {{ $attrs.label }}</el-button
  >
</template>
